home *** CD-ROM | disk | FTP | other *** search
-
-
-
- ____SSSSYYYYMMMMMMMM((((3333FFFF)))) ____SSSSYYYYMMMMMMMM((((3333FFFF))))
-
-
-
- NNNNAAAAMMMMEEEE
- dsymm, ssymm, zsymm, csymm - BLAS level three Symmetric Matrix Product
-
-
- FFFFOOOORRRRTTTTRRRRAAAANNNN 77777777 SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
- ssssuuuubbbbrrrroooouuuuttttiiiinnnneeee ddddssssyyyymmmmmmmm(((( ssssiiiiddddeeee,,,,uuuupppplllloooo,,,,mmmm,,,,nnnn,,,,aaaallllpppphhhhaaaa,,,,aaaa,,,,llllddddaaaa,,,,bbbb,,,,llllddddbbbb,,,,bbbbeeeettttaaaa,,,,cccc,,,,llllddddcccc ))))
- cccchhhhaaaarrrraaaacccctttteeeerrrr****1111 ssssiiiiddddeeee,,,,uuuupppplllloooo
- iiiinnnntttteeeeggggeeeerrrr mmmm,,,, nnnn,,,, llllddddaaaa,,,, llllddddbbbb,,,, llllddddcccc
- ddddoooouuuubbbblllleeee pppprrrreeeecccciiiissssiiiioooonnnn aaaallllpppphhhhaaaa,,,, bbbbeeeettttaaaa
- ddddoooouuuubbbblllleeee pppprrrreeeecccciiiissssiiiioooonnnn aaaa(((( llllddddaaaa,,,,****)))),,,, bbbb((((llllddddbbbb,,,,****)))),,,, cccc((((llllddddcccc,,,,****))))
-
- ssssuuuubbbbrrrroooouuuuttttiiiinnnneeee ssssssssyyyymmmmmmmm(((( ssssiiiiddddeeee,,,,uuuupppplllloooo,,,,mmmm,,,,nnnn,,,,aaaallllpppphhhhaaaa,,,,aaaa,,,,llllddddaaaa,,,,bbbb,,,,llllddddbbbb,,,,bbbbeeeettttaaaa,,,,cccc,,,,llllddddcccc ))))
- cccchhhhaaaarrrraaaacccctttteeeerrrr****1111 ssssiiiiddddeeee,,,,uuuupppplllloooo
- iiiinnnntttteeeeggggeeeerrrr mmmm,,,, nnnn,,,, llllddddaaaa,,,, llllddddbbbb,,,, llllddddcccc
- rrrreeeeaaaallll aaaallllpppphhhhaaaa,,,, bbbbeeeettttaaaa
- rrrreeeeaaaallll aaaa(((( llllddddaaaa,,,,****)))),,,, bbbb((((llllddddbbbb,,,,****)))),,,, cccc((((llllddddcccc,,,,****))))
-
- ssssuuuubbbbrrrroooouuuuttttiiiinnnneeee zzzzssssyyyymmmmmmmm(((( ssssiiiiddddeeee,,,,uuuupppplllloooo,,,,mmmm,,,,nnnn,,,,aaaallllpppphhhhaaaa,,,,aaaa,,,,llllddddaaaa,,,,bbbb,,,,llllddddbbbb,,,,bbbbeeeettttaaaa,,,,cccc,,,,llllddddcccc ))))
- cccchhhhaaaarrrraaaacccctttteeeerrrr****1111 ssssiiiiddddeeee,,,,uuuupppplllloooo
- iiiinnnntttteeeeggggeeeerrrr mmmm,,,, nnnn,,,, llllddddaaaa,,,, llllddddbbbb,,,, llllddddcccc
- ddddoooouuuubbbblllleeee ccccoooommmmpppplllleeeexxxx aaaallllpppphhhhaaaa,,,, bbbbeeeettttaaaa
- ddddoooouuuubbbblllleeee ccccoooommmmpppplllleeeexxxx aaaa(((( llllddddaaaa,,,,****)))),,,, bbbb((((llllddddbbbb,,,,****)))),,,, cccc((((llllddddcccc,,,,****))))
-
- ssssuuuubbbbrrrroooouuuuttttiiiinnnneeee ccccssssyyyymmmmmmmm(((( ssssiiiiddddeeee,,,,uuuupppplllloooo,,,,mmmm,,,,nnnn,,,,aaaallllpppphhhhaaaa,,,,aaaa,,,,llllddddaaaa,,,,bbbb,,,,llllddddbbbb,,,,bbbbeeeettttaaaa,,,,cccc,,,,llllddddcccc ))))
- cccchhhhaaaarrrraaaacccctttteeeerrrr****1111 ssssiiiiddddeeee,,,,uuuupppplllloooo
- iiiinnnntttteeeeggggeeeerrrr mmmm,,,, nnnn,,,, llllddddaaaa,,,, llllddddbbbb,,,, llllddddcccc
- ccccoooommmmpppplllleeeexxxx aaaallllpppphhhhaaaa,,,, bbbbeeeettttaaaa
- ccccoooommmmpppplllleeeexxxx aaaa(((( llllddddaaaa,,,,****)))),,,, bbbb((((llllddddbbbb,,,,****)))),,,, cccc((((llllddddcccc,,,,****))))
-
-
- CCCC SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
- vvvvooooiiiidddd ddddssssyyyymmmmmmmm(((( ssssiiiiddddeeee,,,,uuuupppplllloooo,,,,mmmm,,,,nnnn,,,,aaaallllpppphhhhaaaa,,,,aaaa,,,,llllddddaaaa,,,,bbbb,,,,llllddddbbbb,,,,bbbbeeeettttaaaa,,,,cccc,,,,llllddddcccc ))))
- OOOOppppeeeerrrraaaattttiiiioooonnnnSSSSiiiiddddeeee ssssiiiiddddeeee;;;;
- MMMMaaaattttrrrriiiixxxxTTTTrrrriiiiaaaannnngggglllleeee uuuupppplllloooo;;;;
- IIIInnnntttteeeeggggeeeerrrr mmmm,,,, nnnn,,,, llllddddaaaa,,,, llllddddbbbb,,,, llllddddcccc;;;;
- ddddoooouuuubbbblllleeee aaaallllpppphhhhaaaa,,,, bbbbeeeettttaaaa;;;;
- ddddoooouuuubbbblllleeee ((((****aaaa))))[[[[llllddddaaaa****kkkkaaaa]]]],,,, ((((****bbbb))))[[[[llllddddaaaa****nnnn]]]],,,, ((((****cccc))))[[[[llllddddaaaa****nnnn]]]];;;;
-
- vvvvooooiiiidddd ssssssssyyyymmmmmmmm(((( ssssiiiiddddeeee,,,,uuuupppplllloooo,,,,mmmm,,,,nnnn,,,,aaaallllpppphhhhaaaa,,,,aaaa,,,,llllddddaaaa,,,,bbbb,,,,llllddddbbbb,,,,bbbbeeeettttaaaa,,,,cccc,,,,llllddddcccc ))))
- OOOOppppeeeerrrraaaattttiiiioooonnnnSSSSiiiiddddeeee ssssiiiiddddeeee;;;;
- MMMMaaaattttrrrriiiixxxxTTTTrrrriiiiaaaannnngggglllleeee uuuupppplllloooo;;;;
- IIIInnnntttteeeeggggeeeerrrr mmmm,,,, nnnn,,,, llllddddaaaa,,,, llllddddbbbb,,,, llllddddcccc;;;;
- ffffllllooooaaaatttt aaaallllpppphhhhaaaa,,,, bbbbeeeettttaaaa;;;;
- ffffllllooooaaaatttt ((((****aaaa))))[[[[llllddddaaaa****kkkkaaaa]]]],,,, ((((****bbbb))))[[[[llllddddaaaa****nnnn]]]],,,, ((((****cccc))))[[[[llllddddaaaa****nnnn]]]];;;;
-
- vvvvooooiiiidddd zzzzssssyyyymmmmmmmm(((( ssssiiiiddddeeee,,,,uuuupppplllloooo,,,,mmmm,,,,nnnn,,,,aaaallllpppphhhhaaaa,,,,aaaa,,,,llllddddaaaa,,,,bbbb,,,,llllddddbbbb,,,,bbbbeeeettttaaaa,,,,cccc,,,,llllddddcccc ))))
- OOOOppppeeeerrrraaaattttiiiioooonnnnSSSSiiiiddddeeee ssssiiiiddddeeee;;;;
- MMMMaaaattttrrrriiiixxxxTTTTrrrriiiiaaaannnngggglllleeee uuuupppplllloooo;;;;
- IIIInnnntttteeeeggggeeeerrrr mmmm,,,, nnnn,,,, llllddddaaaa,,,, llllddddbbbb,,,, llllddddcccc;;;;
- ZZZZoooommmmpppplllleeeexxxx aaaallllpppphhhhaaaa,,,, bbbbeeeettttaaaa;;;;
- ZZZZoooommmmpppplllleeeexxxx ((((****aaaa))))[[[[llllddddaaaa****kkkkaaaa]]]],,,, ((((****bbbb))))[[[[llllddddaaaa****nnnn]]]],,,, ((((****cccc))))[[[[llllddddaaaa****nnnn]]]];;;;
-
-
-
-
- PPPPaaaaggggeeee 1111
-
-
-
-
-
-
- ____SSSSYYYYMMMMMMMM((((3333FFFF)))) ____SSSSYYYYMMMMMMMM((((3333FFFF))))
-
-
-
- vvvvooooiiiidddd ccccssssyyyymmmmmmmm(((( ssssiiiiddddeeee,,,,uuuupppplllloooo,,,,mmmm,,,,nnnn,,,,aaaallllpppphhhhaaaa,,,,aaaa,,,,llllddddaaaa,,,,bbbb,,,,llllddddbbbb,,,,bbbbeeeettttaaaa,,,,cccc,,,,llllddddcccc ))))
- OOOOppppeeeerrrraaaattttiiiioooonnnnSSSSiiiiddddeeee ssssiiiiddddeeee;;;;
- MMMMaaaattttrrrriiiixxxxTTTTrrrriiiiaaaannnngggglllleeee uuuupppplllloooo;;;;
- IIIInnnntttteeeeggggeeeerrrr mmmm,,,, nnnn,,,, llllddddaaaa,,,, llllddddbbbb,,,, llllddddcccc;;;;
- CCCCoooommmmpppplllleeeexxxx aaaallllpppphhhhaaaa,,,, bbbbeeeettttaaaa;;;;
- CCCCoooommmmpppplllleeeexxxx ((((****aaaa))))[[[[llllddddaaaa****kkkkaaaa]]]],,,, ((((****bbbb))))[[[[llllddddaaaa****nnnn]]]],,,, ((((****cccc))))[[[[llllddddaaaa****nnnn]]]];;;;
-
-
-
- DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
- ddddssssyyyymmmmmmmm, ssssssssyyyymmmmmmmm, zzzzssssyyyymmmmmmmm and ccccssssyyyymmmmmmmm
-
- perform one of the matrix-matrix operations
-
- C := alpha*A*B + beta*C, or
- C := alpha*B*A + beta*C,
-
- where alpha and beta are scalars, A is a symmetric matrix and B and C are
- m by n matrices.
-
-
- PPPPAAAARRRRAAAAMMMMEEEETTTTEEEERRRRSSSS
- ssssiiiiddddeeee On entry, ssssiiiiddddeeee specifies whether op( A ) multiplies B from the
- left or right as follows:
-
-
- FFFFOOOORRRRTTTTRRRRAAAANNNN
- side = 'L' or 'l' B := alpha*op( A )*B.
- side = 'R' or 'r' B := alpha*B*op( A ).
-
- CCCC
- side = LeftSide B := alpha*op( A )*B.
- side = RightSide B := alpha*B*op( A ).
-
- Unchanged on exit.
-
- uuuupppplllloooo On entry, uuuupppplllloooo specifies whether the matrix A is an upper or
- lower triangular matrix as follows:
-
-
- FFFFOOOORRRRTTTTRRRRAAAANNNN
- uplo = 'U' or 'u' A is an upper triangular matrix.
- uplo = 'L' or 'l' A is a lower triangular matrix.
-
- CCCC
- uplo = UpperTriangle A is an upper triangular matrix.
- uplo = LowerTriangle A is a lower triangular matrix.
-
- Unchanged on exit.
-
-
-
-
-
-
- PPPPaaaaggggeeee 2222
-
-
-
-
-
-
- ____SSSSYYYYMMMMMMMM((((3333FFFF)))) ____SSSSYYYYMMMMMMMM((((3333FFFF))))
-
-
-
- mmmm On entry, mmmm specifies the number of rows of the matrix C. mmmm must
- be at least zero.
- Unchanged on exit.
-
- nnnn On entry, nnnn specifies the number of columns of the matrix C. nnnn
- must be at least zero.
- Unchanged on exit.
-
- aaaallllpppphhhhaaaa On entry, aaaallllpppphhhhaaaa specifies the scalar alpha. When aaaallllpppphhhhaaaa is zero
- then aaaa is not referenced and bbbb need not be set before entry.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- PPPPaaaaggggeeee 3333
-
-
-
-
-
-
- ____SSSSYYYYMMMMMMMM((((3333FFFF)))) ____SSSSYYYYMMMMMMMM((((3333FFFF))))
-
-
-
- Unchanged on exit.
-
- aaaa An array containing the matrix A.
-
- FFFFOOOORRRRTTTTRRRRAAAANNNN
- Array of dimension (lda, ka).
-
- CCCC
- A pointer to an array of size lda*ka.
- See note below about array storage convention for C.
-
- kkkkaaaa is mmmm when side = 'L' or 'l' or LeftSide and is nnnn otherwise.
-
- Before entry with ssssiiiiddddeeee ==== ''''LLLL'''' oooorrrr ''''llll'''' oooorrrr LLLLeeeeffffttttSSSSiiiiddddeeee, the array
- elements corresponding to the m by m part of the matrix A must
- contain the symmetric matrix, such that when:
- uuuupppplllloooo ==== ''''UUUU'''' oooorrrr ''''uuuu'''' oooorrrr UUUUppppppppeeeerrrrTTTTrrrriiiiaaaannnngggglllleeee, the array elements that
- correspond to the leading m by m upper triangular part of the
- matrix A must contain the upper triangular part of the symmetric
- matrix and the corresponding strictly lower triangular part of A
- is not referenced,
- and when uuuupppplllloooo ==== ''''LLLL'''' oooorrrr ''''llll'''' oooorrrr LLLLoooowwwweeeerrrrTTTTrrrriiiiaaaannnngggglllleeee, the array elements
- that correspond to the leading m by m lower triangular part of
- the matrix A must contain the lower triangular part of the
- symmetric matrix and the corresponding strictly upper triangular
- part of A is not referenced.
-
- Before entry with ssssiiiiddddeeee ==== ''''RRRR'''' oooorrrr ''''rrrr'''' oooorrrr RRRRiiiigggghhhhttttSSSSiiiiddddeeee, the array
- elements corresponding to the n by n part of the matrix A must
- contain the symmetric matrix, such that when:
- uuuupppplllloooo ==== ''''UUUU'''' oooorrrr ''''uuuu'''' oooorrrr UUUUppppppppeeeerrrrTTTTrrrriiiiaaaannnngggglllleeee, the array elements that
- correspond to the leading n by n upper triangular part of the
- matrix A must contain the upper triangular part of the symmetric
- matrix and the corresponding strictly lower triangular part of A
- is not referenced,
- and when uuuupppplllloooo ==== ''''LLLL'''' oooorrrr ''''llll'''' oooorrrr LLLLoooowwwweeeerrrrTTTTrrrriiiiaaaannnngggglllleeee, the array elements
- that correspond to the leading n by n lower triangular part of
- the matrix A must contain the lower triangular part of the
- symmetric matrix and the corresponding strictly upper triangular
- part of A is not referenced.
-
- Unchanged on exit.
-
- llllddddaaaa On entry, llllddddaaaa specifies the first dimension of aaaa as declared in
- the calling (sub) program. When side = 'L' or 'l' or LeftSide,
- then llllddddaaaa must be at least max( 1, m ), otherwise llllddddaaaa must be at
- least max( 1, n ).
- Unchanged on exit.
-
- bbbb An array containing the matrix B.
-
- FFFFOOOORRRRTTTTRRRRAAAANNNN
-
-
-
- PPPPaaaaggggeeee 4444
-
-
-
-
-
-
- ____SSSSYYYYMMMMMMMM((((3333FFFF)))) ____SSSSYYYYMMMMMMMM((((3333FFFF))))
-
-
-
- An array of dimension ( ldb, n ).
-
- CCCC
- A pointer to an array of size ldb*n.
- See note below about array storage convention for C.
-
- Before entry, the array elements corresponding to the leading m
- by n part of the matrix B must contain the matrix B.
- Unchanged on exit.
-
- llllddddbbbb On entry, llllddddbbbb specifies the first dimension of bbbb as declared in
- the calling (sub)program. llllddddbbbb must be at least max( 1, m ).
- Unchanged on exit.
-
- bbbbeeeettttaaaa On entry, bbbbeeeettttaaaa specifies the scalar beta. When bbbbeeeettttaaaa is supplied
- as zero then cccc need not be set on input.
- Unchanged on exit.
-
- cccc An array containing the matrix C.
-
- FFFFOOOORRRRTTTTRRRRAAAANNNN
- An array of dimension ( ldc, n ).
-
- CCCC
- A pointer to an array of size ldc*n.
- See note below about array storage convention for C.
-
- Before entry, the elements corresponding to the leading m by n
- part of the matrix C must contain the matrix C, except when beta
- is zero, in which case cccc need not be set on entry.
- On exit, the array cccc is overwritten by the m by n updated matrix
-
- llllddddcccc On entry, llllddddcccc specifies the first dimension of cccc as declared in
- the calling (sub) program. llllddddcccc must be at least max( 1, m ).
- Unchanged on exit.
-
-
- CCCC AAAARRRRRRRRAAAAYYYY SSSSTTTTOOOORRRRAAAAGGGGEEEE CCCCOOOONNNNVVVVEEEENNNNTTTTIIIIOOOONNNN
- The matrices are assumed to be stored in a oooonnnneeee ddddiiiimmmmeeeennnnssssiiiioooonnnnaaaallll CCCC aaaarrrrrrrraaaayyyy
- in an analogous fashion as a Fortran array (column major). Therefore,
- the element A(i+1,j) of matrix A is stored immediately after the
- element A(i,j), while A(i,j+1) is lda elements apart from A(i,j).
- The element A(i,j) of the matrix can be accessed directly by reference
- to a[ (j-1)*lda + (i-1) ].
-
-
- AAAAUUUUTTTTHHHHOOOORRRRSSSS
- Jack Dongarra, Argonne National Laboratory.
- Iain Duff, AERE Harwell.
- Jeremy Du Croz, Numerical Algorithms Group Ltd.
- Sven Hammarling, Numerical Algorithms Group Ltd.
-
-
-
-
- PPPPaaaaggggeeee 5555
-
-
-
-
-
-
- ____SSSSYYYYMMMMMMMM((((3333FFFF)))) ____SSSSYYYYMMMMMMMM((((3333FFFF))))
-
-
-
- TTTTUUUUNNNNIIIINNNNGGGG
- Optimized and parallelized for SGI R3000, R4x00 and R8000 platforms.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- PPPPaaaaggggeeee 6666
-
-
-
-